package com.yxkj.railservicer.util;

import android.content.Context;
import android.content.SharedPreferences;

import java.util.Set;

/**
 * Created by sunyu on 2017/1/23.
 */

public class SPUtil {
    private static SharedPreferences sp;
    /**
     * 获取软件保存的参数
     *
     * @param context
     *            上下文
     * @param key
     *            取出参数的key
     * @return
     */
    public static Set getSet(Context context, String key, Set value) {
        if (sp == null) {
            sp = context.getSharedPreferences("config", Context.MODE_PRIVATE);
        }

        return sp.getStringSet(key,value);// 默认返回false
    }
    /**
     * 保存Set类型的软件参数
     *
     * @param context
     * @param key
     * @param value
     *            要保存的值
     */
    public static void setSet(Context context, String key, Set value) {
        if (sp == null) {
            sp = context.getSharedPreferences("config", Context.MODE_PRIVATE);
        }
        sp.edit().putStringSet(key, value).commit();
    }

    /**
     * 获取软件保存的参数
     *
     * @param context
     *            上下文
     * @param key
     *            取出参数的key
     * @return
     */
    public static boolean getBoolean(Context context, String key) {
        if (sp == null) {
            sp = context.getSharedPreferences("config", Context.MODE_PRIVATE);
        }
        return sp.getBoolean(key, false);// 默认返回false
    }

    /**
     * 保存boolean类型的软件参数
     *
     * @param context
     * @param key
     * @param values
     *            要保存的值
     */
    public static void setBoolean(Context context, String key, boolean values) {
        if (sp == null) {
            sp = context.getSharedPreferences("config", Context.MODE_PRIVATE);
        }
        sp.edit().putBoolean(key, values).commit();
    }

    /**
     * 缓存数据
     * @param context
     * @param key
     * @param values
     */
    public static void setString(Context context, String key, String values) {
        if (sp == null) {
            sp = context.getSharedPreferences("config", Context.MODE_PRIVATE);
        }
        sp.edit().putString(key, values).commit();
    }

    /**
     * 得到缓存的数据
     * @param context
     * @param key
     * @return
     */
    public static String getString(Context context, String key) {
        if (sp == null) {
            sp = context.getSharedPreferences("config", Context.MODE_PRIVATE);
        }
        return sp.getString(key, "");// 默认返回false
    }

    public static void exit(Context context){
        if(sp == null){
            sp = context.getSharedPreferences("config", Context.MODE_PRIVATE);
        }
        SharedPreferences.Editor editor = sp.edit();
        editor.clear();
        editor.commit();
    }
}
